Multisites
You can create multisites where each top menu link directs to new site with own left menu structure. Therefore you can combine different areas, like e.. requirement management, architectures, docs of microservices, terraform modules, etc., into single docs portal.
Here is some TeamB site example with flat menu build from two public repositories, one is open source project https://github.com/MrLesk/Backlog.md, second this repository.
Second Enterprise site example has some more hierarchical menu structure, still each menu item directs to separate site with own structure.
To construct multisites simple yaml file is needed. Bellow definitions of both examples. Save the file on disk, e.g. cat > ./teamB.yaml, and send it via curl. If any of repo is private, add key as parameter.
Simple site with top menu bar
Create yaml file:
email: ...
name: TeamB
repos:
- name: docs
cloneUrl: https://github.com/brodocsdev/docs.git
- name: backlogmd
cloneUrl: https://github.com/MrLesk/Backlog.md.git
menus:
- name: Backlog
target: README.html
repo:
name: backlogmd
- name: Docs
target: README.html
repo:
name: docs
and POST it (with key if any repo is private)
curl -X POST 'https://mvp.brodocs.io/api/sites/init' -F "yaml=@./teamB.yaml;type=application/x-yaml" -F "key=...."
Company wide site with top menu hierarchy
Create yaml file:
email: ...
name: Enterprise site
repos:
- name: repo1
cloneUrl: https://github.com/brodocsdev/repo1.git
- name: repo2
cloneUrl: https://github.com/brodocsdev/repo2.git
- name: repo3
cloneUrl: https://github.com/brodocsdev/repo3.git
- name: repo4
cloneUrl: https://github.com/brodocsdev/repo4.git
- name: repo5
cloneUrl: https://github.com/brodocsdev/repo5.git
- name: repo6
cloneUrl: https://github.com/brodocsdev/repo6.git
- name: repo7
cloneUrl: https://github.com/brodocsdev/repo7.git
- name: repo8
cloneUrl: https://github.com/brodocsdev/repo8.git
menus:
- name: Backlog
menus:
- name: Intake
target: README.html
repo:
name: repo1
- name: Product backlog
target: README.html
repo:
name: repo2
- name: Architecture
menus:
- name: ADRs
target: README.html
repo:
name: repo3
- name: Landscape
target: README.html
repo:
name: repo4
- name: Platform
target: README.html
repo:
name: repo5
- name: Services
menus:
- name: Service A
target: README.html
repo:
name: repo6
- name: Service B
target: README.html
repo:
name: repo7
- name: Infrastructure
menus:
- name: Cloud docs
target: README.html
repo:
name: repo8
- name: Terraform modules
target: README.html
repo:
name: repo8
- name: Ansible roles
target: README.html
repo:
name: repo8
and POST it (with key if any repo is private):
curl -X POST 'https://mvp.brodocs.io/api/sites/init' -F "yaml=@./companySite.yaml;type=application/x-yaml" -F "key=...."